home *** CD-ROM | disk | FTP | other *** search
/ Champak 25 / Volume 25 - JOGO DISK .iso / Games / the_jewel_hunter.swf / scripts / Player_Bike.as < prev    next >
Text File  |  2006-06-13  |  6KB  |  241 lines

  1. classPlayer = function()
  2. {
  3.    this.init();
  4. };
  5. classPlayer.prototype = new MovieClip();
  6. Object.registerClass("Player_Bike",classPlayer);
  7. classPlayer.prototype.init = function()
  8. {
  9.    var _loc1_ = this;
  10.    _loc1_._name = "player_bike";
  11.    Key.addListener(_loc1_);
  12.    _loc1_.xdir = _loc1_.ydir = _loc1_.xspeed = _loc1_.yspeed = 0;
  13.    _loc1_.onEnterFrame = _loc1_.movement;
  14.    Game.player.mc = _loc1_;
  15. };
  16. classPlayer.prototype.onUnload = function()
  17. {
  18.    Key.removeListener(this);
  19. };
  20. classPlayer.prototype.onKeyDown = function()
  21. {
  22.    var _loc2_ = this;
  23.    var _loc1_ = Key.getCode();
  24.    if(_loc1_ == 37)
  25.    {
  26.       _loc2_.xdir = -1;
  27.    }
  28.    else if(_loc1_ == 38)
  29.    {
  30.       _loc2_.ydir = -1;
  31.    }
  32.    else if(_loc1_ == 39)
  33.    {
  34.       _loc2_.xdir = 1;
  35.    }
  36.    else if(_loc1_ == 40)
  37.    {
  38.       _loc2_.ydir = 1;
  39.    }
  40. };
  41. classPlayer.prototype.onKeyUp = function()
  42. {
  43.    var _loc1_ = this;
  44.    var _loc2_ = Key.getCode();
  45.    if(_loc2_ == 37)
  46.    {
  47.       if(_loc1_.xdir == -1)
  48.       {
  49.          _loc1_.xdir = 0;
  50.       }
  51.    }
  52.    else if(_loc2_ == 38)
  53.    {
  54.       if(_loc1_.ydir == -1)
  55.       {
  56.          _loc1_.ydir = 0;
  57.       }
  58.    }
  59.    else if(_loc2_ == 39)
  60.    {
  61.       if(_loc1_.xdir == 1)
  62.       {
  63.          _loc1_.xdir = 0;
  64.       }
  65.    }
  66.    else if(_loc2_ == 40)
  67.    {
  68.       if(_loc1_.ydir == 1)
  69.       {
  70.          _loc1_.ydir = 0;
  71.       }
  72.    }
  73. };
  74. classPlayer.prototype.movement = function()
  75. {
  76.    var _loc1_ = this;
  77.    if(Game.player.mc != _loc1_)
  78.    {
  79.       Game.player.mc = _loc1_;
  80.    }
  81.    var xspeed;
  82.    var range;
  83.    if(_loc1_.xdir != 0)
  84.    {
  85.       if(_loc1_.xdir == -1)
  86.       {
  87.          range = _loc1_._x - 34;
  88.          speed = Math.max(-9,- range / 5);
  89.          _loc1_.xspeed = Math.max(speed,_loc1_.xspeed - 1);
  90.       }
  91.       else
  92.       {
  93.          range = 356 - _loc1_._x;
  94.          speed = Math.min(9,range / 5);
  95.          _loc1_.xspeed = Math.min(speed,_loc1_.xspeed + 1);
  96.       }
  97.    }
  98.    else if(_loc1_.xspeed > 0)
  99.    {
  100.       _loc1_.xspeed = Math.max(0,_loc1_.xspeed - 1);
  101.    }
  102.    else
  103.    {
  104.       _loc1_.xspeed = Math.min(0,_loc1_.xspeed + 1);
  105.    }
  106.    if(_loc1_.ydir != 0)
  107.    {
  108.       if(_loc1_.ydir == -1)
  109.       {
  110.          if(_loc1_.yspeed > -10)
  111.          {
  112.             _loc1_.yspeed = Math.max(-10,_loc1_.yspeed - 1);
  113.          }
  114.       }
  115.       else if(_loc1_.yspeed < 5)
  116.       {
  117.          _loc1_.yspeed = Math.min(5,_loc1_.yspeed + 0.8);
  118.       }
  119.    }
  120.    else if(_loc1_.yspeed > 0)
  121.    {
  122.       _loc1_.yspeed = Math.max(1,_loc1_.yspeed - 1);
  123.    }
  124.    else
  125.    {
  126.       _loc1_.yspeed = Math.min(1,_loc1_.yspeed + 1);
  127.    }
  128.    _loc1_._x = Math.max(34,Math.min(356,_loc1_._x + _loc1_.xspeed));
  129.    _loc1_._y = Math.max(34,Math.min(500,_loc1_._y + _loc1_.yspeed));
  130.    if(_loc1_.xspeed < 0)
  131.    {
  132.       var rotate = Math.max(-90,_loc1_.xspeed * Math.max(1,10 - Game.speed / 2));
  133.    }
  134.    else if(_loc1_.xspeed > 0)
  135.    {
  136.       var rotate = Math.min(90,_loc1_.xspeed * Math.max(1,10 - Game.speed / 2));
  137.    }
  138.    else if(_loc1_.xspeed == 0)
  139.    {
  140.       var rotate = 0;
  141.    }
  142.    _loc1_._rotation = rotate;
  143.    var _loc3_ = _loc1_._parent.effect;
  144.    _loc3_.count = _loc3_.count + 1;
  145.    _loc1_.count = _loc1_.count + 1;
  146.    if(_loc1_.count % 3 == 0)
  147.    {
  148.       var _loc2_ = _loc3_.attachMovie("smoke","s" add _loc3_.count,_loc3_.count);
  149.       _loc2_._x = _loc1_._x + (random(20) - 10);
  150.       _loc2_._y = 20 + _loc1_._y + (random(10) - 5);
  151.       _loc2_._xscale = _loc2_._yscale = random(50) + 50;
  152.    }
  153.    _loc1_.check();
  154. };
  155. classPlayer.prototype.check = function()
  156. {
  157.    var _loc2_ = this;
  158.    var _loc3_ = undefined;
  159.    for(var n in Game.block.holder)
  160.    {
  161.       var _loc1_ = Game.block.holder[n];
  162.       _loc3_ = false;
  163.       if(_loc1_.block != undefined)
  164.       {
  165.          if(_loc2_.block.hitTest(_loc1_.block))
  166.          {
  167.             _loc3_ = true;
  168.          }
  169.       }
  170.       else if(_loc2_.block.hitTest(_loc1_))
  171.       {
  172.          _loc3_ = true;
  173.       }
  174.       if(_loc3_)
  175.       {
  176.          if(_loc1_.type == 0)
  177.          {
  178.             if(_loc1_.pos != undefined)
  179.             {
  180.                Game.block.available[_loc1_.pos] = false;
  181.             }
  182.             Game.player.score += _loc1_.bonus;
  183.             snd.play("snd_get");
  184.          }
  185.          else if(_loc1_.type == 1)
  186.          {
  187.             _loc2_.hit();
  188.          }
  189.          else if(_loc1_.type == 2)
  190.          {
  191.             _loc1_._parent.snakeCount -= 1;
  192.             _loc2_.hit();
  193.          }
  194.          else if(_loc1_.type == 3)
  195.          {
  196.             _loc1_._parent.bikeCount -= 1;
  197.             _loc2_.hit();
  198.          }
  199.          removeMovieClip(_loc1_);
  200.       }
  201.    }
  202. };
  203. classPlayer.prototype.hit = function()
  204. {
  205.    var _loc1_ = this;
  206.    Key.removeListener(_loc1_);
  207.    _loc1_.gotoAndStop(2);
  208.    snd.play("snd_crash");
  209.    delete _loc1_.onEnterFrame;
  210.    Game.player.life -= 1;
  211.    if(Game.player.life > 0)
  212.    {
  213.       _loc1_.hitCount = 50;
  214.       _loc1_.xdir = _loc1_.ydir = _loc1_.yspeed = _loc1_.xspeed = 0;
  215.       Game.speed = 0;
  216.       Game.pause = true;
  217.       _loc1_.onEnterFrame = function()
  218.       {
  219.          var _loc1_ = this;
  220.          if(_loc1_.hitCount > 0)
  221.          {
  222.             _loc1_.hitCount -= 0.5;
  223.             _loc1_._alpha = 100 - _loc1_.hitCount % 5 * 20;
  224.          }
  225.          else
  226.          {
  227.             snd.play("snd_start");
  228.             _loc1_.gotoAndStop(1);
  229.             Game.pause = false;
  230.             Key.addListener(_loc1_);
  231.             _loc1_.onEnterFrame = _loc1_.movement;
  232.          }
  233.       };
  234.    }
  235.    else
  236.    {
  237.       _loc1_.gotoAndStop(2);
  238.       Game.End();
  239.    }
  240. };
  241.